Skip to content

media: iris: add support for purwa platform#518

Merged
sgaud-quic merged 5 commits into
qualcomm-linux:qcom-6.18.yfrom
WangaoW:purwa_video_bu
May 12, 2026
Merged

media: iris: add support for purwa platform#518
sgaud-quic merged 5 commits into
qualcomm-linux:qcom-6.18.yfrom
WangaoW:purwa_video_bu

Conversation

@WangaoW
Copy link
Copy Markdown

@WangaoW WangaoW commented Apr 28, 2026

This series enables the Iris video codec on purwa, allowing purwa to
use hardware‑accelerated video encoding and decoding

CRs-Fixed: 4532709

@WangaoW WangaoW requested review from a team, Komal-Bajaj, knaveen-qc and trsoni April 28, 2026 08:58
@qcomlnxci
Copy link
Copy Markdown

Test Matrix

Test Case glymur-crd kaanapali-mtp lemans-evk monaco-evk qcs615-ride qcs6490-rb3gen2 qcs8300-ride qcs9100-ride-r3 sm8750-mtp x1e80100-crd
0_qcom-next-ci-premerge-tests ◻️ ◻️ ❌ Fail ◻️ ◻️ ◻️ ◻️ ◻️ ◻️ ◻️
BT_FW_KMD_Service ◻️ ◻️ ✅ Pass ✅ Pass ◻️ ◻️ ✅ Pass ◻️ ◻️ ◻️
BT_ON_OFF ◻️ ◻️ ✅ Pass ✅ Pass ◻️ ◻️ ✅ Pass ◻️ ◻️ ◻️
BT_SCAN ◻️ ◻️ ✅ Pass ❌ Fail ◻️ ◻️ ✅ Pass ◻️ ◻️ ◻️
CPUFreq_Validation ◻️ ◻️ ✅ Pass ✅ Pass ◻️ ◻️ ✅ Pass ◻️ ◻️ ◻️
CPU_affinity ◻️ ◻️ ✅ Pass ✅ Pass ◻️ ◻️ ✅ Pass ◻️ ◻️ ◻️
DSP_AudioPD ◻️ ◻️ ✅ Pass ✅ Pass ◻️ ◻️ ✅ Pass ◻️ ◻️ ◻️
Ethernet ◻️ ◻️ ✅ Pass ⚠️ skip ◻️ ◻️ ⚠️ skip ◻️ ◻️ ◻️
Freq_Scaling ◻️ ◻️ ✅ Pass ✅ Pass ◻️ ◻️ ✅ Pass ◻️ ◻️ ◻️
GIC ◻️ ◻️ ✅ Pass ✅ Pass ◻️ ◻️ ✅ Pass ◻️ ◻️ ◻️
IPA ◻️ ◻️ ✅ Pass ✅ Pass ◻️ ◻️ ✅ Pass ◻️ ◻️ ◻️
Interrupts ◻️ ◻️ ✅ Pass ✅ Pass ◻️ ◻️ ✅ Pass ◻️ ◻️ ◻️
OpenCV ◻️ ◻️ ✅ Pass ⚠️ skip ◻️ ◻️ ⚠️ skip ◻️ ◻️ ◻️
PCIe ◻️ ◻️ ✅ Pass ✅ Pass ◻️ ◻️ ✅ Pass ◻️ ◻️ ◻️
Probe_Failure_Check ◻️ ◻️ ❌ Fail ❌ Fail ◻️ ◻️ ❌ Fail ◻️ ◻️ ◻️
RMNET ◻️ ◻️ ✅ Pass ✅ Pass ◻️ ◻️ ✅ Pass ◻️ ◻️ ◻️
UFS_Validation ◻️ ◻️ ✅ Pass ✅ Pass ◻️ ◻️ ✅ Pass ◻️ ◻️ ◻️
USBHost ◻️ ◻️ ❌ Fail ✅ Pass ◻️ ◻️ ✅ Pass ◻️ ◻️ ◻️
WiFi_Firmware_Driver ◻️ ◻️ ❌ Fail ⚠️ skip ◻️ ◻️ ⚠️ skip ◻️ ◻️ ◻️
WiFi_OnOff ◻️ ◻️ ✅ Pass ❌ Fail ◻️ ◻️ ✅ Pass ◻️ ◻️ ◻️
adsp_remoteproc ◻️ ◻️ ✅ Pass ✅ Pass ◻️ ◻️ ✅ Pass ◻️ ◻️ ◻️
cdsp_remoteproc ◻️ ◻️ ✅ Pass ✅ Pass ◻️ ◻️ ✅ Pass ◻️ ◻️ ◻️
gpdsp_remoteproc ◻️ ◻️ ✅ Pass ✅ Pass ◻️ ◻️ ✅ Pass ◻️ ◻️ ◻️
hotplug ◻️ ◻️ ✅ Pass ✅ Pass ◻️ ◻️ ✅ Pass ◻️ ◻️ ◻️
irq ◻️ ◻️ ✅ Pass ✅ Pass ◻️ ◻️ ✅ Pass ◻️ ◻️ ◻️
kaslr ◻️ ◻️ ✅ Pass ✅ Pass ◻️ ◻️ ✅ Pass ◻️ ◻️ ◻️
pinctrl ◻️ ◻️ ✅ Pass ✅ Pass ◻️ ◻️ ✅ Pass ◻️ ◻️ ◻️
qcom_hwrng ◻️ ◻️ ✅ Pass ✅ Pass ◻️ ◻️ ✅ Pass ◻️ ◻️ ◻️
remoteproc ◻️ ◻️ ✅ Pass ✅ Pass ◻️ ◻️ ✅ Pass ◻️ ◻️ ◻️
rngtest ◻️ ◻️ ✅ Pass ✅ Pass ◻️ ◻️ ✅ Pass ◻️ ◻️ ◻️
shmbridge ◻️ ◻️ ❌ Fail ✅ Pass ◻️ ◻️ ✅ Pass ◻️ ◻️ ◻️
smmu ◻️ ◻️ ❌ Fail ✅ Pass ◻️ ◻️ ✅ Pass ◻️ ◻️ ◻️
watchdog ◻️ ◻️ ✅ Pass ✅ Pass ◻️ ◻️ ✅ Pass ◻️ ◻️ ◻️
wpss_remoteproc ◻️ ◻️ ✅ Pass ✅ Pass ◻️ ◻️ ✅ Pass ◻️ ◻️ ◻️

@sgaud-quic
Copy link
Copy Markdown
Contributor

@WangaoW please help rebase this on tip.

@sgaud-quic
Copy link
Copy Markdown
Contributor

@WangaoW please rebase this on tip

Wangao Wang added 5 commits May 12, 2026 14:01
Document the new compatible string "qcom,x1p42100-iris".

Unlike SM8550 where the BSE (Bitstream Engine) is clocked implicitly
via vcodec0_core, x1p42100 exposes a dedicated BSE clock vcodec0_bse
that requires explicit enable/disable and frequency configuration.
The SM8550 driver has no knowledge of this clock and therefore cannot
operate x1p42100 hardware correctly.

Link: https://lore.kernel.org/all/20260507-enable_iris_on_purwa-v6-1-48da505e23bf@oss.qualcomm.com/
Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Signed-off-by: Wangao Wang <wangao.wang@oss.qualcomm.com>
On X1P42100 the Iris block has an extra BSE clock. Wire this clock into
the power on/off sequence.

The BSE clock is used to drive the Bin Stream Engine, which is a sub-block
of the video codec hardware responsible for bitstream-level processing. It
is required to be enabled separately from the core clock to ensure proper
codec operation.

Link: https://lore.kernel.org/all/20260507-enable_iris_on_purwa-v6-2-48da505e23bf@oss.qualcomm.com/
Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
Reviewed-by: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>
Signed-off-by: Wangao Wang <wangao.wang@oss.qualcomm.com>
Introduce platform data for X1P42100, derived from SM8550 but using a
different clock configuration and a dedicated OPP setup.

Link: https://lore.kernel.org/all/20260507-enable_iris_on_purwa-v6-3-48da505e23bf@oss.qualcomm.com/
Signed-off-by: Wangao Wang <wangao.wang@oss.qualcomm.com>
… points

The Iris block on X1P differs from SM8550/X1E in its clock configuration
and requires a dedicated OPP table. The node inherited from the X1E cannot
be reused directly, and the fallback compatible "qcom,sm8550-iris" cannot
be applied.

Override the inherited clocks, clock-names, and operating points, and
replaces them with the X1P42100-specific definitions. A new OPP table
is provided to support the correct performance levels on this platform.

Link: https://lore.kernel.org/all/20260507-enable_iris_on_purwa-v6-4-48da505e23bf@oss.qualcomm.com/
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Reviewed-by: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Wangao Wang <wangao.wang@oss.qualcomm.com>
Enable video nodes on the purwa-iot-som board.

Link: https://lore.kernel.org/all/20260507-enable_iris_on_purwa-v6-5-48da505e23bf@oss.qualcomm.com/
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Reviewed-by: Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>
Signed-off-by: Wangao Wang <wangao.wang@oss.qualcomm.com>
@qswat-orbit-external
Copy link
Copy Markdown

Merge Check Failed: No CR Numbers Found

Error: No Change Request numbers were found.

Please add Change Request numbers to your pull request description in the format CRs-Fixed: 12345 or link GitHub issues that are associated with Change Requests.

@qcomlnxci qcomlnxci requested a review from a team May 12, 2026 06:09
@qswat-orbit-external
Copy link
Copy Markdown

Merge Check Failed: No Change Task Found

No associated change tasks found for CR 4532709 on any of the following entities:

Entities:

  • kernel.qli.2.0

CR: 4532709

Please ensure the CR has a change task associated with at least one of the entities for this branch.

@qcomlnxci
Copy link
Copy Markdown

Test Matrix

Test Case glymur-crd kaanapali-mtp lemans-evk monaco-evk qcs615-ride qcs6490-rb3gen2 qcs8300-ride qcs9100-ride-r3 sm8750-mtp x1e80100-crd
0_qcom-next-ci-premerge-tests ◻️ ◻️ ❌ Fail ◻️ ❌ Fail ❌ Fail ◻️ ❌ Fail ◻️ ◻️
BT_FW_KMD_Service ◻️ ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️ ◻️
BT_ON_OFF ◻️ ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️ ◻️
BT_SCAN ◻️ ◻️ ✅ Pass ❌ Fail ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️ ◻️
CPUFreq_Validation ◻️ ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️ ◻️
CPU_affinity ◻️ ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️ ◻️
DSP_AudioPD ◻️ ◻️ ✅ Pass ✅ Pass ⚠️ skip ✅ Pass ◻️ ⚠️ skip ◻️ ◻️
Ethernet ◻️ ◻️ ⚠️ skip ✅ Pass ⚠️ skip ⚠️ skip ◻️ ⚠️ skip ◻️ ◻️
Freq_Scaling ◻️ ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️ ◻️
GIC ◻️ ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️ ◻️
IPA ◻️ ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️ ◻️
Interrupts ◻️ ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️ ◻️
OpenCV ◻️ ◻️ ✅ Pass ⚠️ skip ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️ ◻️
PCIe ◻️ ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️ ◻️
Probe_Failure_Check ◻️ ◻️ ❌ Fail ❌ Fail ❌ Fail ❌ Fail ◻️ ❌ Fail ◻️ ◻️
RMNET ◻️ ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️ ◻️
UFS_Validation ◻️ ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️ ◻️
USBHost ◻️ ◻️ ❌ Fail ✅ Pass ❌ Fail ❌ Fail ◻️ ❌ Fail ◻️ ◻️
WiFi_Firmware_Driver ◻️ ◻️ ❌ Fail ⚠️ skip ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️ ◻️
WiFi_OnOff ◻️ ◻️ ✅ Pass ❌ Fail ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️ ◻️
adsp_remoteproc ◻️ ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️ ❌ Fail ◻️ ◻️
cdsp_remoteproc ◻️ ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️ ❌ Fail ◻️ ◻️
gpdsp_remoteproc ◻️ ◻️ ✅ Pass ✅ Pass ⚠️ skip ⚠️ skip ◻️ ❌ Fail ◻️ ◻️
hotplug ◻️ ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️ ◻️
irq ◻️ ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️ ◻️
kaslr ◻️ ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️ ◻️
pinctrl ◻️ ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️ ◻️
qcom_hwrng ◻️ ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️ ◻️
remoteproc ◻️ ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️ ❌ Fail ◻️ ◻️
rngtest ◻️ ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️ ◻️
shmbridge ◻️ ◻️ ❌ Fail ✅ Pass ❌ Fail ❌ Fail ◻️ ❌ Fail ◻️ ◻️
smmu ◻️ ◻️ ❌ Fail ✅ Pass ❌ Fail ✅ Pass ◻️ ❌ Fail ◻️ ◻️
watchdog ◻️ ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️ ◻️
wpss_remoteproc ◻️ ◻️ ✅ Pass ✅ Pass ✅ Pass ✅ Pass ◻️ ✅ Pass ◻️ ◻️

@sgaud-quic sgaud-quic merged commit 1e235f1 into qualcomm-linux:qcom-6.18.y May 12, 2026
6 of 8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants